package shoppingmall.reception.mapper;

import org.apache.ibatis.annotations.Mapper;

import shoppingmall.reception.pojo.UserCart;

import java.util.List;

/**
 * 平台会员用户购物车相关的mapper层
 */
@Mapper
public interface CartMapper {

    /**
     * 添加一条购物车数据(为某用户)
     */
    public int saveUserCart (UserCart userCart);

    /**
     * 查询平台会员用户的所有购物车数据列表
     */
    public List<UserCart> getUserCartList (int userId);

    /**
     * 修改平台会员购物车的一条数据
     */
    public int updateUserCart (UserCart userCart);

    /**
     * 修改平台会员购物车的选中状态(支持单条、多条批量修改)
     */
    public int updateUserCartSelectedBatch (List<Integer> cartIds, boolean state);

    /**
     * 删除平台会员购物车数据(支持单条、多条数据删除)
     */
    public int deleteUserCartBatch (List<Integer> cartIds);

    /**
     * 查询购物车数据，根据商品id(cart_commodity_id = ?)和商品规格id(cart_commodity_standard_id = ?)
     */
    public UserCart getCartInfoByCommodityIdAndStandardId (int commodityId, int standardId);

    /**
     * 查询购物车数据,根据购物车id(id = ?)
     */
}
